This invention relates to telecommunications systems and in particular to traffic routing in IP (Internet protocol) networks.
In conventional telecommunications networks, user traffic is carried between terminals by the setting up of circuits or connections therebetween. Within those networks, switches are used to set up the required connections and to provide appropriate routing of traffic. The networks have developed using a number of different control architectures, and provision has been made for interworking between these different architectures. For example, in the ATM (asynchronous transfer mode) field, a recent development has been the concept of a switch that can be partitioned between a number of different control architectures by means of a divider unit. Such an arrangement is described in specification No PCT/GB97/02802. In the switch described in this specification, those switch resources which need to be partitioned by a divider unit comprise:
Address space (VPI/VCI) on each physical port
Buffer space allocated to each partition by class of service
Switch bandwidth allocated to each partition by class of service
There is now an increasing interest in building IP (Internet protocol) networks to carry user traffic with different qualities of service (QoS) to enable preference to be given to certain types of traffic, particularly voice traffic. Within these IP networks, traffic is carried in packets which are individually routed from a source to a desired destination. Such networks are generally referred to as connectionless networks. Routers that are typically used to build IP networks are becoming similar in architecture to switches, and comprise a forwarding path which routes the majority of the user traffic, and a route server which executes the protocols used to determine the routes to be used by the user traffic and which loads routing tables within the forwarding path. It would of course be of advantage to extend the switch divider or partitioning concept described above to an IP router, but the manner in which this may be effected is by no means apparent.
In an ATM switch, the forwarding decision is a simple process. The VPI/VCI of an incoming cell is used to index into a table that defines the egress port and egress VPI/VCI or other egress context identifier. In an IP router however, the forwarding decision is more complex as it requires both the identification of the longest matching IP address in a table of indeterminate size and the processing of other packet header fields in order to correctly forward packets in accordance with pre-defined policies. The latter requires an indeterminate processing resource on a per packet basis.
Further, a divider in an ATM switch can exploit two key ATM attributes to minimise the complexity of switch bandwidth allocation and control. These are the connection oriented nature of ATM and the association of most ATM service classes with quality of service. These two attributes allow and mandate a call admission control process whereby a new call is accepted only if its quality of service requirements can be accommodated without prejudicing the quality of service guarantees already given to existing calls. The divider abstraction in an ATM switch exploits these attributes by partitioning the proportion of bandwidth on each switch port allocated to each ATM service class between control architectures and monitors invocations on the switch to ensure that no invocation would cause the bandwidth bound of the initiating control architecture to be exceeded. This monitoring includes the necessary checks to ensure that the ingress traffic policing functions of the underlying hardware have been correctly set to protect the switch from aberrant behaviour of traffic sources. Neither of the above attributes are available in an IP router, as the standard connectionless protocols have no inherent call admission process and the dominant traffic flows are elastic with no quality of service demands. Further, these traffic flows use protocols such as TCP to maximise use of available bandwidth while competing fairly with other flows under congestion conditions.
An object of the invention is to minimise or to overcome the above disadvantage.
According to a first aspect of the invention, there is provided an IP (Internet protocol) router incorporating divider means adapted to control allocation of packet forwarding resources to a plurality of control architectures.
According to another aspect of the invention there is provided an IP (Internet protocol) router incorporating divider means adapted to merge routing tables from each of a plurality of control architectures into a single routing table on a forwarding path.
Advantageously, the divider unit ensures that predetermined limits on the amount of routing table resource consumed by each control architecture are not exceeded.
The divider unit has functionality to merge the routing tables from each control architecture into one or more routing tables for use within the forwarding path while ensuring that the predetermined limit on the size or amount of the routing table resource consumed by each control architecture is not exceeded.
According to another aspect of the invention there is provided an IP (Internet protocol) network, including a plurality of routers, each said router incorporating divider means adapted to merge routing tables from each of a plurality of control architectures into a single routing table on a forwarding path.
According to another aspect of the invention there is provided a divider unit for an IP (Internet protocol) router, said divider unit incorporating divider means for merging routing tables from each of a plurality of control architectures into a single routing table on a forwarding path.
According to a further aspect of the invention, there is provided an IP (Internet protocol) router having a plurality of ports, each embodying a respective number of virtual ports, and incorporating divider means adapted to control bandwidth allocated to each said virtual port.
In a preferred embodiment, the divider has means for detecting overload and output blocking of a virtual port whereby to control traffic ingress to the router.
According to a further aspect of the invention, there is provided a method of operating a partitioned router in IP (Internet Protocol) network embodying a plurality of virtual private networks, each said private network having its respective control architecture and having a respective set of virtual egress ports on the router, the method including assigning forwarding processing resources to each partition of the router such that each said control architecture is guaranteed a predetermined amount of said forwarding resources.
In a preferred embodiment, a forwarding routing table is provided for each virtual private network and the size of those tables is controlled by the partition.
At least some of the virtual private networks may carry voice traffic so as to provide voice over Internet services.